A formal speci cation of the Kademlia distributed hash table
نویسنده
چکیده
Kademlia is a peer-to-peer distributed hash table (DHT) currently used in the P2P eDonkey le sharing network. The most popular clients used to connect to the Kad network are eMule, aMule and BitTorrent. As other DHT, Kademlia look-up algorithm takes logn steps, which can be reduced to log2b n by increasing the node's routing table size. It also o ers a number of desirable features not o ered by any previous DHT, which makes it the only DHT used in real networks. These features result from the use of a notion of distance between objects introduced by Kademlia. Both nodes and shared les are represented by nbit keys, and their relation depend on the distance between their keys. In this sense, nodes keep information about les close or near to them in the key space and the search algorithm is based on looking for the closest node (or almost closest node, if the information is replicated) to the le key. This paper explains the speci cation of the behaviour of a P2P network that uses the Kademlia DHT in the formal speci cation language Maude. We use the initial description of the Kademlia DHT and ll some open issues with the eMule real implementation. We allow peers to connect to the network and leave it by simulating time using the Real Time Maude facilities.
منابع مشابه
Formal Specification of the Kademlia and the Kad Routing Tables in Maude
Kad is the implementation by eMule and aMule of the Kademlia peer-to peer distributed hash table protocol. Although it agrees with the basic behaviour of the protocol, there are some significant differences. This paper presents the specification of both the Kademlia and the Kad routing tables, using the specification language Maude. As far as we know, this is the first such a formal development...
متن کاملSpecifying and Analyzing the Kademlia Protocol in Maude
Kademlia is a peer-to-peer distributed hash table (DHT) currently used in the P2P eDonkey file sharing network. Kademlia offers a number of desirable features that result from the use of a notion of distance between objects based on the bitwise exclusive or of the n-bit quantities that represent both nodes and files. Nodes keep information about files close or near to them in the key space and ...
متن کاملReverse Engineering of eMule
eMule is a popular peer-to-peer (p2p) client which builds upon the severbased eDonkey2000 (ed2k) platform. In newer versions of eMule, lookups can also be performed over the serverless Kad-network, an implementation of a distributed hash table (DHT) called Kademlia. Since only little is known about the techniques and algorithms used by eMule, this thesis presents an analysis of the implementati...
متن کاملEfficient Indexing of the BitTorrent Distributed Hash Table
The following paper presents various methods and implementation techniques used to harvest metadata efficiently from a Kademlia Distributed Hashtable (DHT) as used in the BitTorrent P2P network to build an index of publicly available files in the BitTorrent ecosystem. The indexer design makes various tradeoffs between throughput and fairness towards other DHT nodes while also being scaleable in...
متن کاملSecure and Trustable Distributed Aggregation Based on Kademlia
Aggregation of values that need to be kept confidential while guaranteeing the robustness of the process and the correctness of the result is required in an increasing number of applications. We propose an aggregation algorithm, which supports a large spectrum of potential applications including complex voting protocols. It relies on the distributed hash table Kademlia, used in BitTorrent, for ...
متن کامل